[]
dashboard.VisualNS.TupleFilter
TupleFilter 类似于 BasicFilter,但可以处理多维数据。等价SQL:
SELECT * FROM DataTable WHERE ( Team = "DTD1" AND Prod = "Wyn" ) OR ( Team = "DTD2" AND Prod = "SpreadJS" );
↳ TupleFilter
• new TupleFilter(targetProfiles
, operator?
, values?
)
名称 | 类型 | 描述 |
---|---|---|
targetProfiles |
IFieldProfile [] |
数据视图中的 filter 字段。 |
operator? |
BasicFilterOperator |
筛选器操作符。 |
values? |
ITuple [] |
筛选器值。 |
▸ add(tuple
): any
增加一个元组。
名称 | 类型 |
---|---|
tuple |
ITuple |
any
▸ contains(tuple
): boolean
返回一个 bool 值,判断筛选器值是否包含当前元组值。
名称 | 类型 |
---|---|
tuple |
ITuple |
boolean
▸ createTuple(dp
, depth?
): ITuple
通过选定的数据点创建一个元组。
名称 | 类型 |
---|---|
dp |
IDataPoint |
depth? |
number |
示例代码
this.items = dv.plain.data.reduce((res, dp) => {
const label = Object.keys(dp).map(key => dp[key]).join('-');
const tuple = filter.createTuple(dp);
res.push({
label,
className: filter.contains(tuple) ? 'selected' : '',
tuple: JSON.stringify(tuple),
});
return res;
}, []);
▸ fromJSON(obj
): any
从 updateOptions.filters 获取筛选器值。
名称 | 类型 |
---|---|
obj |
ITupleFilter |
any
▸ getOperator(): BasicFilterOperator
获取操作符。
▸ getValues(): ITuple
[]
获取筛选器值。
ITuple
[]
▸ isEmpty(): boolean
返回一个 bool 值,判断筛选器值是否是空。
boolean
▸ remove(tuple
): any
移除一个元组。
名称 | 类型 |
---|---|
tuple |
ITuple |
any
▸ setOperator(operator
): any
设置操作符。
名称 | 类型 |
---|---|
operator |
BasicFilterOperator |
any
▸ setValues(vals
): any
设置筛选器值。
名称 | 类型 |
---|---|
vals |
ITuple [] |
any
▸ toJSON(): ITupleFilter
返回一个元组筛选器对象。